An efficient ActionScript 3.0 Just-In-Time compiler implementation

نویسندگان

  • Alessandro Pignotti
  • Graziano Frosini
  • Giuseppe Lettieri
چکیده

Adobe Flash: the current de facto standard for rich content web applications is powered by an ECMAScript derived language called ActionScript. The bytecode for the language is designed to run on a stack based virtual machine. We introduce a Just in Time compiler and runtime environment for such bytecode. The LLVM framework is used to generate optimized native assembly from an intermediate representation, generated from the bytecode while optimizing stack traffic, local variable accesses and exploiting implicit type information.

برای دانلود متن کامل این مقاله و بیش از 32 میلیون مقاله دیگر ابتدا ثبت نام کنید

ثبت نام

اگر عضو سایت هستید لطفا وارد حساب کاربری خود شوید

منابع مشابه

A First Implementation of Modular Smalltalk

A "first" implementation of the Modular Smalltalk object-oriented programming language is presented. The implementation includes an object-oriented parser, object-oriented representation for code fragments and an object-oriented C-code generator, all implemented in Smalltalk-80. This implementation validates two of the five design principles of the Modular Smalltalk language and provides a vehi...

متن کامل

Interpreter Exploitation

As remote exploits further dwindle and perimeter defenses become the standard, remote client-side attacks are becoming the standard vector for attackers. Modern operating systems have quelled the explosion of client-side vulnerabilities using mitigation techniques such as data execution prevention (DEP) and address space layout randomization (ASLR). This work illustrates two novel techniques to...

متن کامل

Overview of the IBM Java Just - in - Time

We present the design and implementation of several optimizations and techniques included in the latest IBM Java Just-in-Time (JIT) Compiler. We first discuss some of the modifications we have applied to Sun Microsystems’ reference implementation of the Java Virtual Machine (JVM) Specification to increase the performance, including a change in the object layout. We then describe each of the opt...

متن کامل

Inline Caching Meets Quickening

Inline caches effectively eliminate the overhead implied by dynamic typing. Yet, inline caching is mostly used in code generated by just-in-time compilers. We present efficient implementation techniques for using inline caches without dynamic translation, thus enabling future interpreter implementers to use this important optimization technique— we report speedups of up to a factor of 1.71—with...

متن کامل

JITDefender: A Defense against JIT Spraying Attacks

JIT spraying is a new code-reuse technique to attack virtual machines based on JIT (Just-in-time) compilation. It has proven to be capable of circumventing the defenses such as data execution prevention (DEP) and address space layout randomization(ASLR), which are effective for preventing the traditional code injection attacks. In this paper, we describe JITDefender, an enhancement of standard ...

متن کامل

ذخیره در منابع من


  با ذخیره ی این منبع در منابع من، دسترسی به آن را برای استفاده های بعدی آسان تر کنید

برای دانلود متن کامل این مقاله و بیش از 32 میلیون مقاله دیگر ابتدا ثبت نام کنید

ثبت نام

اگر عضو سایت هستید لطفا وارد حساب کاربری خود شوید

عنوان ژورنال:

دوره   شماره 

صفحات  -

تاریخ انتشار 2009